package org.coopac.model;

// Generated 07/05/2012 06:37:29 PM by Hibernate Tools 3.4.0.CR1

import java.util.HashSet;
import java.util.Set;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import static javax.persistence.GenerationType.IDENTITY;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Table;

/**
 * CoopacPersona generated by hbm2java
 */
@Entity
@Table(name = "coopac_persona", catalog = "coopac")
public class CoopacPersona implements java.io.Serializable {

	private Integer idPersona;
	private CoopacTipoMaestro coopacTipoMaestro;
	private String apellidoPaternoRazonSocial;
	private String apellidoMaterno;
	private String nombrePersonaNombreComercial;
	private String email;
	private boolean flag;
	private String paginaWeb;
	private Set<CoopacSocio> coopacSocios = new HashSet<CoopacSocio>(0);
	private Set<CoopacConsultaSocioPotencial> coopacConsultaSocioPotencials = new HashSet<CoopacConsultaSocioPotencial>(
			0);
	private Set<CoopacCargoPersona> coopacCargoPersonasForIdPersonaRemitente = new HashSet<CoopacCargoPersona>(
			0);
	private Set<CoopacTelefonoPersona> coopacTelefonoPersonas = new HashSet<CoopacTelefonoPersona>(
			0);
	private Set<CoopacDireccionPersona> coopacDireccionPersonas = new HashSet<CoopacDireccionPersona>(
			0);
	private Set<CoopacTrabajador> coopacTrabajadors = new HashSet<CoopacTrabajador>(
			0);
	private Set<CoopacCargoPersona> coopacCargoPersonasForIdPersonaTipoCoopac = new HashSet<CoopacCargoPersona>(
			0);
	private Set<CoopacDocumentoPersona> coopacDocumentoPersonas = new HashSet<CoopacDocumentoPersona>(
			0);

	public CoopacPersona() {
	}

	public CoopacPersona(CoopacTipoMaestro coopacTipoMaestro, boolean flag) {
		this.coopacTipoMaestro = coopacTipoMaestro;
		this.flag = flag;
	}

	public CoopacPersona(CoopacTipoMaestro coopacTipoMaestro,
			String apellidoPaternoRazonSocial, String apellidoMaterno,
			String nombrePersonaNombreComercial, String email, boolean flag,
			String paginaWeb, Set<CoopacSocio> coopacSocios,
			Set<CoopacConsultaSocioPotencial> coopacConsultaSocioPotencials,
			Set<CoopacCargoPersona> coopacCargoPersonasForIdPersonaRemitente,
			Set<CoopacTelefonoPersona> coopacTelefonoPersonas,
			Set<CoopacDireccionPersona> coopacDireccionPersonas,
			Set<CoopacTrabajador> coopacTrabajadors,
			Set<CoopacCargoPersona> coopacCargoPersonasForIdPersonaTipoCoopac,
			Set<CoopacDocumentoPersona> coopacDocumentoPersonas) {
		this.coopacTipoMaestro = coopacTipoMaestro;
		this.apellidoPaternoRazonSocial = apellidoPaternoRazonSocial;
		this.apellidoMaterno = apellidoMaterno;
		this.nombrePersonaNombreComercial = nombrePersonaNombreComercial;
		this.email = email;
		this.flag = flag;
		this.paginaWeb = paginaWeb;
		this.coopacSocios = coopacSocios;
		this.coopacConsultaSocioPotencials = coopacConsultaSocioPotencials;
		this.coopacCargoPersonasForIdPersonaRemitente = coopacCargoPersonasForIdPersonaRemitente;
		this.coopacTelefonoPersonas = coopacTelefonoPersonas;
		this.coopacDireccionPersonas = coopacDireccionPersonas;
		this.coopacTrabajadors = coopacTrabajadors;
		this.coopacCargoPersonasForIdPersonaTipoCoopac = coopacCargoPersonasForIdPersonaTipoCoopac;
		this.coopacDocumentoPersonas = coopacDocumentoPersonas;
	}

	@Id
	@GeneratedValue(strategy = IDENTITY)
	@Column(name = "ID_PERSONA", unique = true, nullable = false)
	public Integer getIdPersona() {
		return this.idPersona;
	}

	public void setIdPersona(Integer idPersona) {
		this.idPersona = idPersona;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "ID_TIPO_MAESTRO_PERSONA", nullable = false)
	public CoopacTipoMaestro getCoopacTipoMaestro() {
		return this.coopacTipoMaestro;
	}

	public void setCoopacTipoMaestro(CoopacTipoMaestro coopacTipoMaestro) {
		this.coopacTipoMaestro = coopacTipoMaestro;
	}

	@Column(name = "APELLIDO_PATERNO_RAZON_SOCIAL")
	public String getApellidoPaternoRazonSocial() {
		return this.apellidoPaternoRazonSocial;
	}

	public void setApellidoPaternoRazonSocial(String apellidoPaternoRazonSocial) {
		this.apellidoPaternoRazonSocial = apellidoPaternoRazonSocial;
	}

	@Column(name = "APELLIDO_MATERNO")
	public String getApellidoMaterno() {
		return this.apellidoMaterno;
	}

	public void setApellidoMaterno(String apellidoMaterno) {
		this.apellidoMaterno = apellidoMaterno;
	}

	@Column(name = "NOMBRE_PERSONA_NOMBRE_COMERCIAL")
	public String getNombrePersonaNombreComercial() {
		return this.nombrePersonaNombreComercial;
	}

	public void setNombrePersonaNombreComercial(
			String nombrePersonaNombreComercial) {
		this.nombrePersonaNombreComercial = nombrePersonaNombreComercial;
	}

	@Column(name = "EMAIL")
	public String getEmail() {
		return this.email;
	}

	public void setEmail(String email) {
		this.email = email;
	}

	@Column(name = "FLAG", nullable = false)
	public boolean isFlag() {
		return this.flag;
	}

	public void setFlag(boolean flag) {
		this.flag = flag;
	}

	@Column(name = "PAGINA_WEB")
	public String getPaginaWeb() {
		return this.paginaWeb;
	}

	public void setPaginaWeb(String paginaWeb) {
		this.paginaWeb = paginaWeb;
	}

	@OneToMany(fetch = FetchType.LAZY, mappedBy = "coopacPersona")
	public Set<CoopacSocio> getCoopacSocios() {
		return this.coopacSocios;
	}

	public void setCoopacSocios(Set<CoopacSocio> coopacSocios) {
		this.coopacSocios = coopacSocios;
	}

	@OneToMany(fetch = FetchType.LAZY, mappedBy = "coopacPersona")
	public Set<CoopacConsultaSocioPotencial> getCoopacConsultaSocioPotencials() {
		return this.coopacConsultaSocioPotencials;
	}

	public void setCoopacConsultaSocioPotencials(
			Set<CoopacConsultaSocioPotencial> coopacConsultaSocioPotencials) {
		this.coopacConsultaSocioPotencials = coopacConsultaSocioPotencials;
	}

	@OneToMany(fetch = FetchType.LAZY, mappedBy = "coopacPersonaByIdPersonaRemitente")
	public Set<CoopacCargoPersona> getCoopacCargoPersonasForIdPersonaRemitente() {
		return this.coopacCargoPersonasForIdPersonaRemitente;
	}

	public void setCoopacCargoPersonasForIdPersonaRemitente(
			Set<CoopacCargoPersona> coopacCargoPersonasForIdPersonaRemitente) {
		this.coopacCargoPersonasForIdPersonaRemitente = coopacCargoPersonasForIdPersonaRemitente;
	}

	@OneToMany(fetch = FetchType.LAZY, mappedBy = "coopacPersona")
	public Set<CoopacTelefonoPersona> getCoopacTelefonoPersonas() {
		return this.coopacTelefonoPersonas;
	}

	public void setCoopacTelefonoPersonas(
			Set<CoopacTelefonoPersona> coopacTelefonoPersonas) {
		this.coopacTelefonoPersonas = coopacTelefonoPersonas;
	}

	@OneToMany(fetch = FetchType.LAZY, mappedBy = "coopacPersona")
	public Set<CoopacDireccionPersona> getCoopacDireccionPersonas() {
		return this.coopacDireccionPersonas;
	}

	public void setCoopacDireccionPersonas(
			Set<CoopacDireccionPersona> coopacDireccionPersonas) {
		this.coopacDireccionPersonas = coopacDireccionPersonas;
	}

	@OneToMany(fetch = FetchType.LAZY, mappedBy = "coopacPersona")
	public Set<CoopacTrabajador> getCoopacTrabajadors() {
		return this.coopacTrabajadors;
	}

	public void setCoopacTrabajadors(Set<CoopacTrabajador> coopacTrabajadors) {
		this.coopacTrabajadors = coopacTrabajadors;
	}

	@OneToMany(fetch = FetchType.LAZY, mappedBy = "coopacPersonaByIdPersonaTipoCoopac")
	public Set<CoopacCargoPersona> getCoopacCargoPersonasForIdPersonaTipoCoopac() {
		return this.coopacCargoPersonasForIdPersonaTipoCoopac;
	}

	public void setCoopacCargoPersonasForIdPersonaTipoCoopac(
			Set<CoopacCargoPersona> coopacCargoPersonasForIdPersonaTipoCoopac) {
		this.coopacCargoPersonasForIdPersonaTipoCoopac = coopacCargoPersonasForIdPersonaTipoCoopac;
	}

	@OneToMany(fetch = FetchType.LAZY, mappedBy = "coopacPersona")
	public Set<CoopacDocumentoPersona> getCoopacDocumentoPersonas() {
		return this.coopacDocumentoPersonas;
	}

	public void setCoopacDocumentoPersonas(
			Set<CoopacDocumentoPersona> coopacDocumentoPersonas) {
		this.coopacDocumentoPersonas = coopacDocumentoPersonas;
	}

}
